﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace Ceremony.API.ViewModel
{
    public class BobingResultViewModel
    {
        /// <summary>
        ///（0:授权码无效，1：开始动画,2：活动未开始，3：活动已结束，4：次数已用完,5：未授权 10：系统内部错误,11:奖项配置错误）
        /// </summary>
        public int CanBobing { get; set; }
        /// <summary>
        /// 点数集合
        /// </summary>
        public List<int> Points { get; set; }
        /// <summary>
        /// 奖项类型(0:未中奖，1：一秀，2：2举，3：四进，4：三红，5：对堂， 6：状元（四红），7：状元（五子），8：状元（五红），9：状元（六勃黑），10：状元（遍地锦），11：状元（六勃红），12：状元（状元插金花）)
        /// </summary>
        public int PrizeType { get; set; }
        /// <summary>
        /// 提示消息
        /// </summary>
        public string Message { get; set; }
        /// <summary>
        /// 积分
        /// </summary>
        public int Integral { get; set; }
        /// <summary>
        /// 剩余次数
        /// </summary>
        public int Times { get; set; }
    }

    public class PhotoResponse
    {
        public int TotalCount { get; set; }

        public IEnumerable<PhotoViewModel> Data { get; set; }
    }
    public class PhotoViewModel
    {
        public string Title { get; set; }

        public IEnumerable<PhotoDataViewModel> Data { get; set; }
    }
    public class PhotoDataViewModel
    {
        public string ImageId { get; set; }
        public string PicUrl { get; set; }
    }

    public class BobingSerialResponse
    {
        public int SerialNO { get; set; }
    }

    public class SyncPrizeResult
    {
        /// <summary>
        /// 授权码
        /// </summary>
        public string AuthorizationCode { get; set; }
        /// <summary>
        /// 奖项Id
        /// </summary>
        public int PrizeId { get; set; }
        /// <summary>
        /// 博饼结果
        /// </summary>
        public string PrizeResult { get; set; }
        /// <summary>
        /// 中奖时间
        /// </summary>
        public DateTime CreateTime { get; set; }

        public SyncPrizeResult() { }
        public SyncPrizeResult(string authorizationCode,int prizeId, string prizeResult)
        {
            this.AuthorizationCode = authorizationCode;
            this.PrizeId = prizeId;
            this.PrizeResult = prizeResult;
            this.CreateTime = DateTime.Now;
        }
    }

    public class PrizeRecordResponse
    {
        public int UserId { get; set; }
        public string PrizeName { get; set; }
        public int Integral { get; set; }

        public int PrizeNum { get; set; }

        public List<string> ImageSource { get; set; }
    }

    public class BobingResponseCode
    {
        /// <summary>
        /// 0： 成功 1：已注册 2：失败
        /// </summary>
        public int ResponseCode { get; set; }
    }

    public class RankingResponse
    {
        public int RankNum { get; set; }
        public string AuthorizeCode { get; set; }

        public string UserName { get; set; }

        public string ImageUrl { get; set; }

        public int Integral { get; set; }
    }
}
